// source --> https://www.pccorner.gr/wp-content/plugins/cookie-notice/js/front.min.js?ver=1.2.48 !function(d){function a(e){var i=d(this);i.scrollTop()>parseInt(cnArgs.onScrollOffset)&&(i.setCookieNotice("accept"),i.off("scroll",a))}d(document).ready(function(){var s=d("#cookie-notice"),c=d.fn.getCookieNotice();d(document).on("click",".cn-set-cookie",function(e){e.preventDefault(),d(this).setCookieNotice(d(this).data("cookie-set"))}),d(document).on("click",".cn-revoke-cookie",function(e){if(e.preventDefault(),"yes"===cnArgs.refuse){var i=d(this);if("yes"===cnArgs.onScroll&&d(window).on("scroll",a),"1"===cnArgs.revoke_cookies){if(i.hasClass("cn-revoke-inline")){var o=d("body");o.hasClass("cookies-revoke")||o.hasClass("cookies-not-set")||("automatic"===cnArgs.revoke_cookies_opt?s.showCookieNotice(3):s.showCookieNotice(2))}else s.showCookieNotice(1);c=d.fn.getCookieNotice(),d.fn.setCookieNoticeBodyClass("cookies-set cookies-revoke "+("true"===c?"cookies-accepted":"cookies-refused"))}}}),void 0===c?("yes"===cnArgs.onScroll&&d(window).on("scroll",a),s.showCookieNotice(0),d.fn.setCookieNoticeBodyClass("cookies-not-set")):"yes"===cnArgs.refuse?"1"===cnArgs.revoke_cookies&&("automatic"===cnArgs.revoke_cookies_opt&&s.hideCookieNotice(1),d.fn.setCookieNoticeBodyClass("cookies-set "+("true"===c?"cookies-accepted":"cookies-refused"))):d.fn.setCookieNoticeBodyClass("cookies-set "+("true"===c?"cookies-accepted":"cookies-refused"))}),d.fn.setCookieNotice=function(e){"yes"===cnArgs.onScroll&&d(window).off("scroll",a);var i=new Date,o=new Date,s=d("#cookie-notice"),c=d.fn.getCookieNotice();if(o.setTime(parseInt(i.getTime())+1e3*parseInt(cnArgs.cookieTime)),e="accept"===e?"true":"false",document.cookie=cnArgs.cookieName+"="+e+";expires="+o.toUTCString()+";"+(void 0!==cnArgs.cookieDomain&&""!==cnArgs.cookieDomain?"domain="+cnArgs.cookieDomain+";":"")+(void 0!==cnArgs.cookiePath&&""!==cnArgs.cookiePath?"path="+cnArgs.cookiePath+";":"")+("1"===cnArgs.secure?"secure;":""),d.event.trigger({type:"setCookieNotice",value:e,time:i,expires:o}),d.fn.setCookieNoticeBodyClass("cookies-set "+("true"===e?"cookies-accepted":"cookies-refused")),"yes"===cnArgs.refuse&&"1"===cnArgs.revoke_cookies&&"automatic"===cnArgs.revoke_cookies_opt?s.hideCookieNotice(2):s.hideCookieNotice(0),"1"===cnArgs.redirection&&("true"===e&&void 0===c||e!==c&&void 0!==c)){var n=window.location.protocol+"//",t=window.location.host+"/"+window.location.pathname;"1"===cnArgs.cache?(n=n+t.replace("//","/")+(""===window.location.search?"?":window.location.search+"&")+"cn-reloaded=1"+window.location.hash,window.location.href=n):(n=n+t.replace("//","/")+window.location.search+window.location.hash,window.location.reload(!0))}else;},d.fn.setCookieNoticeBodyClass=function(e){d("body").removeClass("cookies-revoke cookies-accepted cookies-refused cookies-set cookies-not-set").addClass(e)},d.fn.getCookieNotice=function(){var e=("; "+document.cookie).split("; cookie_notice_accepted=");return 2===e.length?e.pop().split(";").shift():void 0},d.fn.showCookieNotice=function(e){d.event.trigger({type:"showCookieNotice",value:e,data:cnArgs});var i=this;switch(e){case 0:"fade"===cnArgs.hideEffect?i.css({visibility:"visible",display:"none"}).fadeIn(400):"slide"===cnArgs.hideEffect?i.css({visibility:"visible",display:"none"}).slideDown(400):i.css({visibility:"visible"}).show();break;case 1:"fade"===cnArgs.hideEffect?i.find(".cookie-notice-revoke-container").fadeOut(400,function(){i.css({visibility:"visible",display:"none"}).fadeIn(400)}):"slide"===cnArgs.hideEffect?i.find(".cookie-notice-revoke-container").slideUp(400,function(){i.css({visibility:"visible",display:"none"}).slideDown(400)}):i.css({visibility:"visible"}).find(".cookie-notice-revoke-container").hide();break;case 2:"fade"===cnArgs.hideEffect?i.css({visibility:"visible",display:"none"}).fadeIn(400):"slide"===cnArgs.hideEffect?i.css({visibility:"visible",display:"none"}).slideDown(400):i.css({visibility:"visible"});break;case 3:"fade"===cnArgs.hideEffect?i.find(".cookie-notice-revoke-container").fadeOut(400,function(){i.css({visibility:"visible",display:"none"}).fadeIn(400)}):"slide"===cnArgs.hideEffect?i.find(".cookie-notice-revoke-container").slideUp(400,function(){i.css({visibility:"visible",display:"none"}).slideDown(400)}):i.css({visibility:"visible"}).find(".cookie-notice-revoke-container").hide()}},d.fn.hideCookieNotice=function(e){d.event.trigger({type:"hideCookieNotice",value:e,data:cnArgs});var i=this,o=this.css("display");switch(e){case 0:"fade"===cnArgs.hideEffect?i.fadeOut(400):"slide"===cnArgs.hideEffect?i.slideUp(400):i.css({visibility:"hidden"});break;case 1:"fade"===cnArgs.hideEffect?i.find(".cookie-notice-revoke-container").hide().fadeIn(400).css({visibility:"visible",display:"block"}):"slide"===cnArgs.hideEffect?i.find(".cookie-notice-revoke-container").hide().slideDown(400).css({visibility:"visible",display:"block"}):i.find(".cookie-notice-revoke-container").css({visibility:"visible",display:"block"});break;case 2:"fade"===cnArgs.hideEffect?i.fadeOut(400,function(){i.css({visibility:"hidden",display:o}).find(".cookie-notice-revoke-container").hide().fadeIn(400).css({visibility:"visible",display:"block"})}):"slide"===cnArgs.hideEffect?i.slideUp(400,function(){i.css({visibility:"hidden",display:o}).find(".cookie-notice-revoke-container").hide().slideDown(400).css({visibility:"visible",display:"block"})}):i.css({visibility:"hidden"}).find(".cookie-notice-revoke-container").css({visibility:"visible",display:"block"})}}}(jQuery); // source --> https://www.pccorner.gr/wp-content/plugins/knowledgebase-helpdesk/assets/js/jquery.modal.min.js?ver=5.3.2 /* A simple jQuery modal (http://github.com/kylefox/jquery-modal) Version 0.8.0 */ !function(o){"object"==typeof module&&"object"==typeof module.exports?o(require("jquery"),window,document):o(jQuery,window,document)}(function(o,t,e,i){var s=[],l=function(){return s.length?s[s.length-1]:null},n=function(){var o,t=!1;for(o=s.length-1;o>=0;o--)s[o].$blocker&&(s[o].$blocker.toggleClass("current",!t).toggleClass("behind",t),t=!0)};o.modal=function(t,e){var i,n;if(this.$body=o("body"),this.options=o.extend({},o.modal.defaults,e),this.options.doFade=!isNaN(parseInt(this.options.fadeDuration,10)),this.$blocker=null,this.options.closeExisting)for(;o.modal.isActive();)o.modal.close();if(s.push(this),t.is("a"))if(n=t.attr("href"),/^#/.test(n)){if(this.$elm=o(n),1!==this.$elm.length)return null;this.$body.append(this.$elm),this.open()}else this.$elm=o("
"),this.$body.append(this.$elm),i=function(o,t){t.elm.remove()},this.showSpinner(),t.trigger(o.modal.AJAX_SEND),o.get(n).done(function(e){if(o.modal.isActive()){t.trigger(o.modal.AJAX_SUCCESS);var s=l();s.$elm.empty().append(e).on(o.modal.CLOSE,i),s.hideSpinner(),s.open(),t.trigger(o.modal.AJAX_COMPLETE)}}).fail(function(){t.trigger(o.modal.AJAX_FAIL);var e=l();e.hideSpinner(),s.pop(),t.trigger(o.modal.AJAX_COMPLETE)});else this.$elm=t,this.$body.append(this.$elm),this.open()},o.modal.prototype={constructor:o.modal,open:function(){var t=this;this.block(),this.options.doFade?setTimeout(function(){t.show()},this.options.fadeDuration*this.options.fadeDelay):this.show(),o(e).off("keydown.modal").on("keydown.modal",function(o){var t=l();27==o.which&&t.options.escapeClose&&t.close()}),this.options.clickClose&&this.$blocker.click(function(t){t.target==this&&o.modal.close()})},close:function(){s.pop(),this.unblock(),this.hide(),o.modal.isActive()||o(e).off("keydown.modal")},block:function(){this.$elm.trigger(o.modal.BEFORE_BLOCK,[this._ctx()]),this.$body.css("overflow","hidden"),this.$blocker=o('
').appendTo(this.$body),n(),this.options.doFade&&this.$blocker.css("opacity",0).animate({opacity:1},this.options.fadeDuration),this.$elm.trigger(o.modal.BLOCK,[this._ctx()])},unblock:function(t){!t&&this.options.doFade?this.$blocker.fadeOut(this.options.fadeDuration,this.unblock.bind(this,!0)):(this.$blocker.children().appendTo(this.$body),this.$blocker.remove(),this.$blocker=null,n(),o.modal.isActive()||this.$body.css("overflow",""))},show:function(){this.$elm.trigger(o.modal.BEFORE_OPEN,[this._ctx()]),this.options.showClose&&(this.closeButton=o(''+this.options.closeText+""),this.$elm.append(this.closeButton)),this.$elm.addClass(this.options.modalClass).appendTo(this.$blocker),this.options.doFade?this.$elm.css("opacity",0).show().animate({opacity:1},this.options.fadeDuration):this.$elm.show(),this.$elm.trigger(o.modal.OPEN,[this._ctx()])},hide:function(){this.$elm.trigger(o.modal.BEFORE_CLOSE,[this._ctx()]),this.closeButton&&this.closeButton.remove();var t=this;this.options.doFade?this.$elm.fadeOut(this.options.fadeDuration,function(){t.$elm.trigger(o.modal.AFTER_CLOSE,[t._ctx()])}):this.$elm.hide(0,function(){t.$elm.trigger(o.modal.AFTER_CLOSE,[t._ctx()])}),this.$elm.trigger(o.modal.CLOSE,[this._ctx()])},showSpinner:function(){this.options.showSpinner&&(this.spinner=this.spinner||o('
').append(this.options.spinnerHtml),this.$body.append(this.spinner),this.spinner.show())},hideSpinner:function(){this.spinner&&this.spinner.remove()},_ctx:function(){return{elm:this.$elm,$blocker:this.$blocker,options:this.options}}},o.modal.close=function(t){if(o.modal.isActive()){t&&t.preventDefault();var e=l();return e.close(),e.$elm}},o.modal.isActive=function(){return s.length>0},o.modal.getCurrent=l,o.modal.defaults={closeExisting:!0,escapeClose:!0,clickClose:!0,closeText:"Close",closeClass:"",modalClass:"modal",spinnerHtml:null,showSpinner:!0,showClose:!0,fadeDuration:null,fadeDelay:1},o.modal.BEFORE_BLOCK="modal:before-block",o.modal.BLOCK="modal:block",o.modal.BEFORE_OPEN="modal:before-open",o.modal.OPEN="modal:open",o.modal.BEFORE_CLOSE="modal:before-close",o.modal.CLOSE="modal:close",o.modal.AFTER_CLOSE="modal:after-close",o.modal.AJAX_SEND="modal:ajax:send",o.modal.AJAX_SUCCESS="modal:ajax:success",o.modal.AJAX_FAIL="modal:ajax:fail",o.modal.AJAX_COMPLETE="modal:ajax:complete",o.fn.modal=function(t){return 1===this.length&&new o.modal(this,t),this},o(e).on("click.modal",'a[rel~="modal:close"]',o.modal.close),o(e).on("click.modal",'a[rel~="modal:open"]',function(t){t.preventDefault(),o(this).modal()})}); // source --> https://www.pccorner.gr/wp-content/plugins/knowledgebase-helpdesk/assets/js/packery.pkgd.min.js?ver=5.3.2 /*! * Packery PACKAGED v2.1.2 * Gapless, draggable grid layouts * * Licensed GPLv3 for open source use * or Packery Commercial License for commercial use * * http://packery.metafizzy.co * Copyright 2013-2018 Metafizzy */ !function(t,e){"function"==typeof define&&define.amd?define("jquery-bridget/jquery-bridget",["jquery"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("jquery")):t.jQueryBridget=e(t,t.jQuery)}(window,function(t,e){"use strict";function i(i,s,a){function h(t,e,n){var o,s="$()."+i+'("'+e+'")';return t.each(function(t,h){var u=a.data(h,i);if(!u)return void r(i+" not initialized. Cannot call methods, i.e. "+s);var c=u[e];if(!c||"_"==e.charAt(0))return void r(s+" is not a valid method");var d=c.apply(u,n);o=void 0===o?d:o}),void 0!==o?o:t}function u(t,e){t.each(function(t,n){var o=a.data(n,i);o?(o.option(e),o._init()):(o=new s(n,e),a.data(n,i,o))})}a=a||e||t.jQuery,a&&(s.prototype.option||(s.prototype.option=function(t){a.isPlainObject(t)&&(this.options=a.extend(!0,this.options,t))}),a.fn[i]=function(t){if("string"==typeof t){var e=o.call(arguments,1);return h(this,t,e)}return u(this,t),this},n(a))}function n(t){!t||t&&t.bridget||(t.bridget=i)}var o=Array.prototype.slice,s=t.console,r="undefined"==typeof s?function(){}:function(t){s.error(t)};return n(e||t.jQuery),i}),function(t,e){"function"==typeof define&&define.amd?define("get-size/get-size",e):"object"==typeof module&&module.exports?module.exports=e():t.getSize=e()}(window,function(){"use strict";function t(t){var e=parseFloat(t),i=-1==t.indexOf("%")&&!isNaN(e);return i&&e}function e(){}function i(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;u>e;e++){var i=h[e];t[i]=0}return t}function n(t){var e=getComputedStyle(t);return e||a("Style returned "+e+". Are you running this code in a hidden iframe on Firefox? See https://bit.ly/getsizebug1"),e}function o(){if(!c){c=!0;var e=document.createElement("div");e.style.width="200px",e.style.padding="1px 2px 3px 4px",e.style.borderStyle="solid",e.style.borderWidth="1px 2px 3px 4px",e.style.boxSizing="border-box";var i=document.body||document.documentElement;i.appendChild(e);var o=n(e);r=200==Math.round(t(o.width)),s.isBoxSizeOuter=r,i.removeChild(e)}}function s(e){if(o(),"string"==typeof e&&(e=document.querySelector(e)),e&&"object"==typeof e&&e.nodeType){var s=n(e);if("none"==s.display)return i();var a={};a.width=e.offsetWidth,a.height=e.offsetHeight;for(var c=a.isBorderBox="border-box"==s.boxSizing,d=0;u>d;d++){var l=h[d],f=s[l],p=parseFloat(f);a[l]=isNaN(p)?0:p}var g=a.paddingLeft+a.paddingRight,m=a.paddingTop+a.paddingBottom,y=a.marginLeft+a.marginRight,v=a.marginTop+a.marginBottom,_=a.borderLeftWidth+a.borderRightWidth,x=a.borderTopWidth+a.borderBottomWidth,b=c&&r,E=t(s.width);E!==!1&&(a.width=E+(b?0:g+_));var w=t(s.height);return w!==!1&&(a.height=w+(b?0:m+x)),a.innerWidth=a.width-(g+_),a.innerHeight=a.height-(m+x),a.outerWidth=a.width+y,a.outerHeight=a.height+v,a}}var r,a="undefined"==typeof console?e:function(t){console.error(t)},h=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],u=h.length,c=!1;return s}),function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},n=i[t]=i[t]||[];return-1==n.indexOf(e)&&n.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},n=i[t]=i[t]||{};return n[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=i.indexOf(e);return-1!=n&&i.splice(n,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){i=i.slice(0),e=e||[];for(var n=this._onceEvents&&this._onceEvents[t],o=0;o=t.x+e&&this.y+this.height>=t.y+i},e.overlaps=function(t){var e=this.x+this.width,i=this.y+this.height,n=t.x+t.width,o=t.y+t.height;return this.xt.x&&this.yt.y},e.getMaximalFreeRects=function(e){if(!this.overlaps(e))return!1;var i,n=[],o=this.x+this.width,s=this.y+this.height,r=e.x+e.width,a=e.y+e.height;return this.yr&&(i=new t({x:r,y:this.y,width:o-r,height:this.height}),n.push(i)),s>a&&(i=new t({x:this.x,y:a,width:this.width,height:s-a}),n.push(i)),this.x=t.width&&this.height>=t.height},t}),function(t,e){if("function"==typeof define&&define.amd)define("packery/js/packer",["./rect"],e);else if("object"==typeof module&&module.exports)module.exports=e(require("./rect"));else{var i=t.Packery=t.Packery||{};i.Packer=e(i.Rect)}}(window,function(t){"use strict";function e(t,e,i){this.width=t||0,this.height=e||0,this.sortDirection=i||"downwardLeftToRight",this.reset()}var i=e.prototype;i.reset=function(){this.spaces=[];var e=new t({x:0,y:0,width:this.width,height:this.height});this.spaces.push(e),this.sorter=n[this.sortDirection]||n.downwardLeftToRight},i.pack=function(t){for(var e=0;e=t.x+t.width&&i.height>=t.height-.01;if(n){t.y=i.y,this.placed(t);break}}},i.rowPack=function(t){for(var e=0;e=t.y+t.height&&i.width>=t.width-.01;if(n){t.x=i.x,this.placed(t);break}}},i.placeInSpace=function(t,e){t.x=e.x,t.y=e.y,this.placed(t)},i.placed=function(t){for(var e=[],i=0;ii&&1>n;return o?void this.goTo(t,e):void a.apply(this,arguments)},s.enablePlacing=function(){this.removeTransitionStyles(),this.isTransitioning&&n&&(this.element.style[n]="none"),this.isTransitioning=!1,this.getSize(),this.layout._setRectSize(this.element,this.rect),this.isPlacing=!0},s.disablePlacing=function(){this.isPlacing=!1},s.removeElem=function(){var t=this.element.parentNode;t&&t.removeChild(this.element),this.layout.packer.addSpace(this.rect),this.emitEvent("remove",[this])},s.showDropPlaceholder=function(){var t=this.dropPlaceholder;t||(t=this.dropPlaceholder=document.createElement("div"),t.className="packery-drop-placeholder",t.style.position="absolute"),t.style.width=this.size.width+"px",t.style.height=this.size.height+"px",this.positionDropPlaceholder(),this.layout.element.appendChild(t)},s.positionDropPlaceholder=function(){this.dropPlaceholder.style[n]="translate("+this.rect.x+"px, "+this.rect.y+"px)"},s.hideDropPlaceholder=function(){var t=this.dropPlaceholder.parentNode;t&&t.removeChild(this.dropPlaceholder)},o}),function(t,e){"function"==typeof define&&define.amd?define(["get-size/get-size","outlayer/outlayer","packery/js/rect","packery/js/packer","packery/js/item"],e):"object"==typeof module&&module.exports?module.exports=e(require("get-size"),require("outlayer"),require("./rect"),require("./packer"),require("./item")):t.Packery=e(t.getSize,t.Outlayer,t.Packery.Rect,t.Packery.Packer,t.Packery.Item)}(window,function(t,e,i,n,o){"use strict";function s(t,e){return t.position.y-e.position.y||t.position.x-e.position.x}function r(t,e){return t.position.x-e.position.x||t.position.y-e.position.y}function a(t,e){var i=e.x-t.x,n=e.y-t.y;return Math.sqrt(i*i+n*n)}i.prototype.canFit=function(t){return this.width>=t.width-1&&this.height>=t.height-1};var h=e.create("packery");h.Item=o;var u=h.prototype;u._create=function(){e.prototype._create.call(this),this.packer=new n,this.shiftPacker=new n,this.isEnabled=!0,this.dragItemCount=0;var t=this;this.handleDraggabilly={dragStart:function(){t.itemDragStart(this.element)},dragMove:function(){t.itemDragMove(this.element,this.position.x,this.position.y)},dragEnd:function(){t.itemDragEnd(this.element)}},this.handleUIDraggable={start:function(e,i){i&&t.itemDragStart(e.currentTarget)},drag:function(e,i){i&&t.itemDragMove(e.currentTarget,i.position.left,i.position.top)},stop:function(e,i){i&&t.itemDragEnd(e.currentTarget)}}},u._resetLayout=function(){this.getSize(),this._getMeasurements();var t,e,i;this._getOption("horizontal")?(t=1/0,e=this.size.innerHeight+this.gutter,i="rightwardTopToBottom"):(t=this.size.innerWidth+this.gutter,e=1/0,i="downwardLeftToRight"),this.packer.width=this.shiftPacker.width=t,this.packer.height=this.shiftPacker.height=e,this.packer.sortDirection=this.shiftPacker.sortDirection=i,this.packer.reset(),this.maxY=0,this.maxX=0},u._getMeasurements=function(){this._getMeasurement("columnWidth","width"),this._getMeasurement("rowHeight","height"),this._getMeasurement("gutter","width")},u._getItemLayoutPosition=function(t){if(this._setRectSize(t.element,t.rect),this.isShifting||this.dragItemCount>0){var e=this._getPackMethod();this.packer[e](t.rect)}else this.packer.pack(t.rect);return this._setMaxXY(t.rect),t.rect},u.shiftLayout=function(){this.isShifting=!0,this.layout(),delete this.isShifting},u._getPackMethod=function(){return this._getOption("horizontal")?"rowPack":"columnPack"},u._setMaxXY=function(t){this.maxX=Math.max(t.x+t.width,this.maxX),this.maxY=Math.max(t.y+t.height,this.maxY)},u._setRectSize=function(e,i){var n=t(e),o=n.outerWidth,s=n.outerHeight;(o||s)&&(o=this._applyGridGutter(o,this.columnWidth),s=this._applyGridGutter(s,this.rowHeight)),i.width=Math.min(o,this.packer.width),i.height=Math.min(s,this.packer.height)},u._applyGridGutter=function(t,e){if(!e)return t+this.gutter;e+=this.gutter;var i=t%e,n=i&&1>i?"round":"ceil";return t=Math[n](t/e)*e},u._getContainerSize=function(){return this._getOption("horizontal")?{width:this.maxX-this.gutter}:{height:this.maxY-this.gutter}},u._manageStamp=function(t){var e,n=this.getItem(t);if(n&&n.isPlacing)e=n.rect;else{var o=this._getElementOffset(t);e=new i({x:this._getOption("originLeft")?o.left:o.right,y:this._getOption("originTop")?o.top:o.bottom})}this._setRectSize(t,e),this.packer.placed(e),this._setMaxXY(e)},u.sortItemsByPosition=function(){var t=this._getOption("horizontal")?r:s;this.items.sort(t)},u.fit=function(t,e,i){var n=this.getItem(t);n&&(this.stamp(n.element),n.enablePlacing(),this.updateShiftTargets(n),e=void 0===e?n.rect.x:e,i=void 0===i?n.rect.y:i,this.shift(n,e,i),this._bindFitEvents(n),n.moveTo(n.rect.x,n.rect.y),this.shiftLayout(),this.unstamp(n.element),this.sortItemsByPosition(),n.disablePlacing())},u._bindFitEvents=function(t){function e(){n++,2==n&&i.dispatchEvent("fitComplete",null,[t])}var i=this,n=0;t.once("layout",e),this.once("layoutComplete",e)},u.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&(this.options.shiftPercentResize?this.resizeShiftPercentLayout():this.layout())},u.needsResizeLayout=function(){var e=t(this.element),i=this._getOption("horizontal")?"innerHeight":"innerWidth";return e[i]!=this.size[i]},u.resizeShiftPercentLayout=function(){var e=this._getItemsForLayout(this.items),i=this._getOption("horizontal"),n=i?"y":"x",o=i?"height":"width",s=i?"rowHeight":"columnWidth",r=i?"innerHeight":"innerWidth",a=this[s];if(a=a&&a+this.gutter){this._getMeasurements();var h=this[s]+this.gutter;e.forEach(function(t){var e=Math.round(t.rect[n]/a);t.rect[n]=e*h})}else{var u=t(this.element)[r]+this.gutter,c=this.packer[o];e.forEach(function(t){t.rect[n]=t.rect[n]/c*u})}this.shiftLayout()},u.itemDragStart=function(t){if(this.isEnabled){this.stamp(t);var e=this.getItem(t);e&&(e.enablePlacing(),e.showDropPlaceholder(),this.dragItemCount++,this.updateShiftTargets(e))}},u.updateShiftTargets=function(t){this.shiftPacker.reset(),this._getBoundingRect();var e=this._getOption("originLeft"),n=this._getOption("originTop");this.stamps.forEach(function(t){var o=this.getItem(t);if(!o||!o.isPlacing){var s=this._getElementOffset(t),r=new i({x:e?s.left:s.right,y:n?s.top:s.bottom});this._setRectSize(t,r),this.shiftPacker.placed(r)}},this);var o=this._getOption("horizontal"),s=o?"rowHeight":"columnWidth",r=o?"height":"width";this.shiftTargetKeys=[],this.shiftTargets=[];var a,h=this[s];if(h=h&&h+this.gutter){var u=Math.ceil(t.rect[r]/h),c=Math.floor((this.shiftPacker[r]+this.gutter)/h);a=(c-u)*h;for(var d=0;c>d;d++){var l=o?0:d*h,f=o?d*h:0;this._addShiftTarget(l,f,a)}}else a=this.shiftPacker[r]+this.gutter-t.rect[r],this._addShiftTarget(0,0,a);var p=this._getItemsForLayout(this.items),g=this._getPackMethod();p.forEach(function(t){var e=t.rect;this._setRectSize(t.element,e),this.shiftPacker[g](e),this._addShiftTarget(e.x,e.y,a);var i=o?e.x+e.width:e.x,n=o?e.y:e.y+e.height;if(this._addShiftTarget(i,n,a),h)for(var s=Math.round(e[r]/h),u=1;s>u;u++){var c=o?i:e.x+h*u,d=o?e.y+h*u:n;this._addShiftTarget(c,d,a)}},this)},u._addShiftTarget=function(t,e,i){var n=this._getOption("horizontal")?e:t;if(!(0!==n&&n>i)){var o=t+","+e,s=-1!=this.shiftTargetKeys.indexOf(o);s||(this.shiftTargetKeys.push(o),this.shiftTargets.push({x:t,y:e}))}},u.shift=function(t,e,i){var n,o=1/0,s={x:e,y:i};this.shiftTargets.forEach(function(t){ var e=a(t,s);o>e&&(n=t,o=e)}),t.rect.x=n.x,t.rect.y=n.y};var c=120;u.itemDragMove=function(t,e,i){function n(){s.shift(o,e,i),o.positionDropPlaceholder(),s.layout()}var o=this.isEnabled&&this.getItem(t);if(o){e-=this.size.paddingLeft,i-=this.size.paddingTop;var s=this,r=new Date,a=this._itemDragTime&&r-this._itemDragTime https://www.pccorner.gr/wp-content/plugins/knowledgebase-helpdesk/assets/js/script.js?ver=5.3.2 /****************************** Metarial preloader plugin start ******************************/ (function (e) { var t = { position: "bottom", height: "5px", col_1: "#159756", col_2: "#da4733", col_3: "#3b78e7", col_4: "#fdba2c", fadeIn: 200, fadeOut: 200 }; e.materialPreloader = function (n) { var r = e.extend({}, t, n); $template = ""; e(".kbx-articles").prepend($template); this.on = function () { e("#materialPreloader").fadeIn(r.fadeIn) }; this.off = function () { e("#materialPreloader").fadeOut(r.fadeOut) } } })(jQuery) jQuery(document).ready(function ($) { $("#kbx-query").on("keyup", function (e) { var value = $(this).val(); var currentInputBox = $(this); $(".kbx-hidden-search").val(value); if (value.length > 3) { var data = { 'action': 'kbx_search_article', 'post_key': value, }; currentInputBox.addClass('searching'); jQuery.post(ajaxurl, data, function (response) { var json = $.parseJSON(response); if (json.status == 'true') { currentInputBox.siblings('#serp-dd').css('display', 'block'); currentInputBox.siblings('#serp-dd').children(".result").html(''); currentInputBox.siblings('#serp-dd').children(".result").html(json.list); } if (json.status == 'false') { currentInputBox.siblings('#serp-dd').css('display', 'block'); currentInputBox.siblings('#serp-dd').children(".result").html(json.list); } currentInputBox.removeClass('searching'); }); } else { currentInputBox.siblings('#serp-dd').children(".result").html(""); currentInputBox.siblings('#serp-dd').css('display', 'none'); currentInputBox.removeClass('searching'); } }); //Hide the pop up if click outside of result. $(document).mouseup(function (e) { var container = $('#serp-dd'); // if the target of the click isn't the container nor a descendant of the container if (!container.is(e.target) && container.has(e.target).length === 0) { container.css({'display': 'none'}); } }); }); jQuery(document).ready(function ($) { $(".kbx-fes-trigger").on("click", function (e) { e.preventDefault(); $(this).toggleClass("open"); $(".kbx-fes-widget-main").toggleClass("visible"); }); $(".kbx-fes-widget-main .close-it").on("click", function (e) { e.preventDefault(); $(".kbx-fes-trigger").toggleClass("open"); $(".kbx-fes-widget-main").toggleClass("visible"); }); $(".kbx-fes-search-form-submit").on("click", function (e) { e.preventDefault(); var value = $(".kbx-fes-search-form-input").val(); getFewSearchResult(value); }); $(".kbx-fes-search-form-input").on("keyup", function (e) { e.preventDefault(); var value = $(this).val(); if (value.length > 3) { getFewSearchResult(value); } }); function getFewSearchResult(value) { var searchString = value; if (searchString.length > 3) { var data = { 'action': 'kbx_search_article', 'post_key': value, }; $(".search-spinner").removeClass('hidden'); $('.search-empty').addClass("hidden"); $('.kbx-fes-alert').addClass("hidden"); jQuery.post(ajaxurl, data, function (response) { var json = $.parseJSON(response); if (json.status == 'true') { $('.kbx-fes-search-results').css('display', 'block'); $('.kbx-fes-search-results-ul').html(''); $('.kbx-fes-search-results-ul').html(json.list); } if (json.status == 'false') { $('.kbx-fes-search-results').css('display', 'none'); $('.kbx-fes-search-results-ul').html(''); $('.search-empty').removeClass("hidden"); $('.search-empty .fes-search-terms').html(searchString); } $(".search-spinner").addClass('hidden'); }); } else { $('.kbx-fes-search-results').css('display', 'none'); $('.kbx-fes-search-results-ul').html(''); $('.search-empty').addClass("hidden"); $('.kbx-fes-alert').removeClass("hidden"); $('.kbx-fes-alert').html(""); $('.kbx-fes-alert').html("Search string is too short!"); } } //kbx tabs $('ul.kbx-tabs li').first().addClass('kbx-tab-current'); $('.kbx-tabs-container .kbx-tab-content').first().addClass('kbx-tab-current'); $('ul.kbx-tabs li').click(function () { var tab_id = $(this).attr('data-tab'); $('ul.kbx-tabs li').removeClass('kbx-tab-current'); $('.kbx-tab-content').removeClass('kbx-tab-current'); $(this).addClass('kbx-tab-current'); $("#" + tab_id).addClass('kbx-tab-current'); }); //Glossary page Search Full Width if ($("#docsSearch").length > 0) { var offset = $("#docsSearch").offset(); var offsetTop = 0; if (offset.top < 500) { var offsetTop = 10; } else { var offsetTop = offset.top - 100; } var serchArea = $("#searchBar"); $(window).scroll(function () { var scroll = $(window).scrollTop(); if (scroll >= offsetTop) { serchArea.css({ "width": "100%" }) } else { serchArea.css({ "width": "50%" }) } }); } //Basic Layout Masonry Load // setTimeout(function () { // $('.kbx-category-list').imagesLoaded().packery({ // itemSelector: '.kbx-category-box', // }); // }, 300); recalculateGlossaryWidth(); //fullWidthGlossary(); //Initialize the metarial preloader var kbx_glossary_preloader = new $.materialPreloader({ position: 'top', height: '8px', col_1: '#159756', col_2: '#da4733', col_3: '#3b78e7', col_4: '#fdba2c', fadeIn: 200, fadeOut: 200 }); //Glossay page terms action var gloddaryConMargin = $(".kbx-glossary-letters").height() / 2; var gloddaryConMarginStr = '-' + gloddaryConMargin + 'px'; $('.kbx-glossary-letters').css({ 'margin-top': gloddaryConMarginStr }); $(document).on('mouseover', '.kbx-glossary-letter', function (e) { $('.kbx-glossary-letter').removeClass('active-glossary-item'); $(this).addClass('active-glossary-item'); var position = $(this).position(); var topPosition = position.top - 50; var bgposition = "0px " + topPosition + "px"; $(this).parent().css({ 'background-position': bgposition, }) }); $(document).on('click', '.kbx-glossary-letter', function (e) { $("#kbx-glossary-load-more").css({'display': 'none'}); kbx_glossary_preloader.on(); $('.kbx-glossary-letter').removeClass('active-glossary-item'); $('.kbx-glossary-letter').removeClass('active-glossary-item-bold'); $(this).addClass('active-glossary-item'); $(this).addClass('active-glossary-item-bold'); var kbxGterm = $(this).attr('data-letter'); var data = { 'action': 'kbx_glossary_articles_by_term', 'gterm': kbxGterm, }; $.post(ajaxurl, data, function (response) { kbx_glossary_preloader.off(); $('.articleList').html(''); var $container = $('.articleList').packery(); var $html = $(response.html); $container.append($html); recalculateGlossaryWidth(); $container.packery('appended', $html); if (response.total_articles > response.offset) { $("#kbx-glossary-load-more").attr('data-gterm', response.gterm); $("#kbx-glossary-load-more").attr('data-offset', response.offset); $("#kbx-glossary-load-more").css({'display': 'block'}); } }); }); //Infinite Scrolling $(document).on("click", "#kbx-glossary-load-more", function () { var currentDom = $(this); var actionType = "more"; kbx_glossary_load_more(currentDom, actionType); }); /*$(window).on("scroll", function() { if($("#kbx-glossary-load-more").length > 0){ var scrollHeight = $(document).height(); var scrollPosition = $(window).height() + $(window).scrollTop(); var scrollVal=(scrollHeight - scrollPosition) / scrollHeight; if (scrollVal.toFixed(2)<= 0.02) { var currentDom=$("#kbx-glossary-load-more"); currentDom.css({'display':'inline-block'}); kbx_glossary_load_more(currentDom); //alert('working'); } } });*/ function kbx_glossary_load_more(currentDom) { $('#kbx-glossary-load-more-pre-loader').show(); var offset = currentDom.attr('data-offset'); var gTerm = currentDom.attr('data-gterm'); //console.log(offset); var data = { 'action': 'kbx_glossary_load_more', 'offset': offset, 'gterm': gTerm, }; $.post(ajaxurl, data, function (response) { $('#kbx-glossary-load-more-pre-loader').hide(); //Showing more product by appending to the list. $('.articleList').html(); var $container = $('.articleList').packery(); var $html = $(response.html); $container.append($html); recalculateGlossaryWidth(); $container.packery('appended', $html); // console.log(response); if (response.offset == -1) { currentDom.css({'display': 'none'}); } else { currentDom.attr('data-offset', response.offset); currentDom.attr('data-gterm', response.gterm); } //alert(response.offset); }); } jQuery(window).resize(function(){ recalculateGlossaryWidth(); }); }); function getOffset1(el) { var _x = 0; var _y = 0; while (el && !isNaN(el.offsetLeft) && !isNaN(el.offsetTop)) { _x += el.offsetLeft - el.scrollLeft; _y += el.offsetTop - el.scrollTop; el = el.offsetParent; } return {top: _y, left: _x}; } //Glossary page forcing to full width function fullWidthGlossary(){ var fullwidth = jQuery("body").prop("clientWidth"); var fullheight = jQuery(window).height(); if (jQuery('.kbx-glossary-container').length > 0) { var maindivcon = jQuery('.kbx-articles').parent()[0]; jQuery('.kbx-glossary-container').removeAttr('style'); var getleft = getOffset1(maindivcon); console.log(getleft.left); jQuery('.kbx-glossary-container').css({ 'width': fullwidth + 'px', 'left': '-' + getleft.left + 'px', 'right': '-' + getleft.left + 'px', 'position': 'relative' }); /*jQuery('#docsSearch').css({ 'width':fullwidth+'px', 'left':'-'+getleft.left+'px', }); jQuery('.kbx-glossary-letters').css({ 'right':'-'+getleft.left+'px', });*/ } } function recalculateGlossaryWidth(){ var glosary_width = jQuery('.kbx-glossary-container .kbx-articles').width(); if( glosary_width < 450 ){ jQuery(document).find('.kbx-glossary-container .kbx-articles .kbx-glossary-item').css({ 'width' : '100%' }); }else if( (glosary_width >= 450) && (glosary_width < 768) ){ jQuery(document).find('.kbx-glossary-container .kbx-articles .kbx-glossary-item').css({ 'width' : '50%' }); }else if( (glosary_width >= 768) && (glosary_width < 1024) ){ jQuery(document).find('.kbx-glossary-container .kbx-articles .kbx-glossary-item').css({ 'width' : '33.33%' }); }else if( (glosary_width >= 1024) && (glosary_width < 1366) ){ jQuery(document).find('.kbx-glossary-container .kbx-articles .kbx-glossary-item').css({ 'width' : '25%' }); } } jQuery(window).load(function(){ // init Packery var kb_grid = jQuery('.kb-container').imagesLoaded().packery({ // options... }); jQuery('.kbx-category-list').imagesLoaded().packery({ itemSelector: '.kbx-category-box', }); }); // source --> https://www.pccorner.gr/wp-content/plugins/knowledgebase-helpdesk/assets/js/jquery.slimscroll.min.js?ver=5.3.2 /*! Copyright (c) 2011 Piotr Rochala (http://rocha.la) * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. * * Version: 1.3.8 * */ (function(e){e.fn.extend({slimScroll:function(f){var a=e.extend({width:"auto",height:"250px",size:"7px",color:"#000",position:"right",distance:"1px",start:"top",opacity:.4,alwaysVisible:!1,disableFadeOut:!1,railVisible:!1,railColor:"#333",railOpacity:.2,railDraggable:!0,railClass:"slimScrollRail",barClass:"slimScrollBar",wrapperClass:"slimScrollDiv",allowPageScroll:!1,wheelStep:20,touchScrollStep:200,borderRadius:"7px",railBorderRadius:"7px"},f);this.each(function(){function v(d){if(r){d=d||window.event; var c=0;d.wheelDelta&&(c=-d.wheelDelta/120);d.detail&&(c=d.detail/3);e(d.target||d.srcTarget||d.srcElement).closest("."+a.wrapperClass).is(b.parent())&&n(c,!0);d.preventDefault&&!k&&d.preventDefault();k||(d.returnValue=!1)}}function n(d,g,e){k=!1;var f=b.outerHeight()-c.outerHeight();g&&(g=parseInt(c.css("top"))+d*parseInt(a.wheelStep)/100*c.outerHeight(),g=Math.min(Math.max(g,0),f),g=0=b.outerHeight()?k=!0:(c.stop(!0, !0).fadeIn("fast"),a.railVisible&&m.stop(!0,!0).fadeIn("fast"))}function p(){a.alwaysVisible||(B=setTimeout(function(){a.disableFadeOut&&r||y||z||(c.fadeOut("slow"),m.fadeOut("slow"))},1E3))}var r,y,z,B,A,u,l,C,k=!1,b=e(this);if(b.parent().hasClass(a.wrapperClass)){var q=b.scrollTop(),c=b.siblings("."+a.barClass),m=b.siblings("."+a.railClass);x();if(e.isPlainObject(f)){if("height"in f&&"auto"==f.height){b.parent().css("height","auto");b.css("height","auto");var h=b.parent().parent().height();b.parent().css("height", h);b.css("height",h)}else"height"in f&&(h=f.height,b.parent().css("height",h),b.css("height",h));if("scrollTo"in f)q=parseInt(a.scrollTo);else if("scrollBy"in f)q+=parseInt(a.scrollBy);else if("destroy"in f){c.remove();m.remove();b.unwrap();return}n(q,!1,!0)}}else if(!(e.isPlainObject(f)&&"destroy"in f)){a.height="auto"==a.height?b.parent().height():a.height;q=e("
").addClass(a.wrapperClass).css({position:"relative",overflow:"hidden",width:a.width,height:a.height});b.css({overflow:"hidden", width:a.width,height:a.height});var m=e("
").addClass(a.railClass).css({width:a.size,height:"100%",position:"absolute",top:0,display:a.alwaysVisible&&a.railVisible?"block":"none","border-radius":a.railBorderRadius,background:a.railColor,opacity:a.railOpacity,zIndex:90}),c=e("
").addClass(a.barClass).css({background:a.color,width:a.size,position:"absolute",top:0,opacity:a.opacity,display:a.alwaysVisible?"block":"none","border-radius":a.borderRadius,BorderRadius:a.borderRadius,MozBorderRadius:a.borderRadius, WebkitBorderRadius:a.borderRadius,zIndex:99}),h="right"==a.position?{right:a.distance}:{left:a.distance};m.css(h);c.css(h);b.wrap(q);b.parent().append(c);b.parent().append(m);a.railDraggable&&c.bind("mousedown",function(a){var b=e(document);z=!0;t=parseFloat(c.css("top"));pageY=a.pageY;b.bind("mousemove.slimscroll",function(a){currTop=t+a.pageY-pageY;c.css("top",currTop);n(0,c.position().top,!1)});b.bind("mouseup.slimscroll",function(a){z=!1;p();b.unbind(".slimscroll")});return!1}).bind("selectstart.slimscroll", function(a){a.stopPropagation();a.preventDefault();return!1});m.hover(function(){w()},function(){p()});c.hover(function(){y=!0},function(){y=!1});b.hover(function(){r=!0;w();p()},function(){r=!1;p()});b.bind("touchstart",function(a,b){a.originalEvent.touches.length&&(A=a.originalEvent.touches[0].pageY)});b.bind("touchmove",function(b){k||b.originalEvent.preventDefault();b.originalEvent.touches.length&&(n((A-b.originalEvent.touches[0].pageY)/a.touchScrollStep,!0),A=b.originalEvent.touches[0].pageY)}); x();"bottom"===a.start?(c.css({top:b.outerHeight()-c.outerHeight()}),n(0,!0)):"top"!==a.start&&(n(e(a.start).position().top,null,!0),a.alwaysVisible||c.hide());window.addEventListener?(this.addEventListener("DOMMouseScroll",v,!1),this.addEventListener("mousewheel",v,!1)):document.attachEvent("onmousewheel",v)}});return this}});e.fn.extend({slimscroll:e.fn.slimScroll})})(jQuery); // source --> https://www.pccorner.gr/wp-content/plugins/knowledgebase-helpdesk/assets/js/jquery.cookie.js?ver=5.3.2 /*! * jQuery Cookie Plugin v1.4.1 * https://github.com/carhartl/jquery-cookie * * Copyright 2006, 2014 Klaus Hartl * Released under the MIT license */ (function (factory) { if (typeof define === 'function' && define.amd) { // AMD (Register as an anonymous module) define(['jquery'], factory); } else if (typeof exports === 'object') { // Node/CommonJS module.exports = factory(require('jquery')); } else { // Browser globals factory(jQuery); } }(function ($) { var pluses = /\+/g; function encode(s) { return config.raw ? s : encodeURIComponent(s); } function decode(s) { return config.raw ? s : decodeURIComponent(s); } function stringifyCookieValue(value) { return encode(config.json ? JSON.stringify(value) : String(value)); } function parseCookieValue(s) { if (s.indexOf('"') === 0) { // This is a quoted cookie as according to RFC2068, unescape... s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\'); } try { // Replace server-side written pluses with spaces. // If we can't decode the cookie, ignore it, it's unusable. // If we can't parse the cookie, ignore it, it's unusable. s = decodeURIComponent(s.replace(pluses, ' ')); return config.json ? JSON.parse(s) : s; } catch(e) {} } function read(s, converter) { var value = config.raw ? s : parseCookieValue(s); return $.isFunction(converter) ? converter(value) : value; } var config = $.cookie = function (key, value, options) { // Write if (arguments.length > 1 && !$.isFunction(value)) { options = $.extend({}, config.defaults, options); if (typeof options.expires === 'number') { var days = options.expires, t = options.expires = new Date(); t.setMilliseconds(t.getMilliseconds() + days * 864e+5); } return (document.cookie = [ encode(key), '=', stringifyCookieValue(value), options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE options.path ? '; path=' + options.path : '', options.domain ? '; domain=' + options.domain : '', options.secure ? '; secure' : '' ].join('')); } // Read var result = key ? undefined : {}, // To prevent the for loop in the first place assign an empty array // in case there are no cookies at all. Also prevents odd result when // calling $.cookie(). cookies = document.cookie ? document.cookie.split('; ') : [], i = 0, l = cookies.length; for (; i < l; i++) { var parts = cookies[i].split('='), name = decode(parts.shift()), cookie = parts.join('='); if (key === name) { // If second argument (value) is a function it's a converter... result = read(cookie, value); break; } // Prevent storing a cookie that we couldn't decode. if (!key && (cookie = read(cookie)) !== undefined) { result[name] = cookie; } } return result; }; config.defaults = {}; $.removeCookie = function (key, options) { // Must not alter options, thus extending a fresh object... $.cookie(key, '', $.extend({}, options, { expires: -1 })); return !$.cookie(key); }; })); // source --> https://www.pccorner.gr/wp-content/plugins/knowledgebase-helpdesk/assets/js/bot-plugin.js?ver=5.3.2 /* * Project: kbxBot jQuery Plugin * Description: kbxBot AI based functionality are handled . * Author: QuantumCloud * Version: 1.0 */ (function ($) { /* * Global variable as object will beused to handle * kbxBot initialize, tree change transfer, * changing tree steps and cookies etc. */ var globalKbx = { initialize: 0, settings: {}, wildCard: 0, wildcards: '', wildcardsHelp: ['start', 'faq', 'email', 'reset'], articleStep: 'asking', supportStep: 'welcome', hasNameCookie: $.cookie("shopper"), shopperUserName: '', shopperEmail: '', shopperMessage: '', emptymsghandler: 0, repeatQueryEmpty: '', kbxIsWorking: 0, ai_step: 0, df_status_lock: 0, }; /* * kbxBot welcome section coverd * greeting for new and already visited shopper * based the memory after asking thier name. */ var kbxWelcome = { greeting: function () { //Very begining greetting. var botJoinMsg = "" + globalKbx.settings.obj.agent + " " + kbxKits.randomMsg(globalKbx.settings.obj.agent_join); kbxMsg.single(botJoinMsg); //Showing greeting for name in cookie or fresh shopper. setTimeout(function () { var firstMsg = kbxKits.randomMsg(globalKbx.settings.obj.hi_there) + ' ' + kbxKits.randomMsg(globalKbx.settings.obj.welcome) + " " + globalKbx.settings.obj.host + "! "; var secondtMsg = kbxKits.randomMsg(globalKbx.settings.obj.asking_name); kbxMsg.double(firstMsg, secondtMsg); //dialogflow if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 0; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } }, globalKbx.settings.preLoadingTime); } }; //Append the message to the message container based on the requirement. var kbxMsg = { single: function (msg) { globalKbx.kbxIsWorking = 1; $(globalKbx.settings.messageContainer).append(kbxKits.botPreloader()); //scroll to the last message kbxKits.scrollTo(); setTimeout(function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').html(msg); //If has youtube link then show video kbxKits.videohandler(); //Enable the editor kbxKits.enableEditor(globalKbx.settings.obj.send_msg); //keeping in history kbxKits.kbxBotHistorySave(); //scroll to the last message kbxKits.scrollTo(); }, globalKbx.settings.preLoadingTime); }, single_nobg: function (msg) { globalKbx.kbxIsWorking = 1; $(globalKbx.settings.messageContainer).append(kbxKits.botPreloader()); //scroll to the last message kbxKits.scrollTo(); setTimeout(function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').css({ 'background-color': 'transparent', 'border': 'none' }).html(msg); //Enable the editor kbxKits.enableEditor(globalKbx.settings.obj.send_msg); //scroll to the last message kbxKits.scrollTo(); //keeping in history kbxKits.kbxBotHistorySave(); }, globalKbx.settings.preLoadingTime); }, double: function (fristMsg, secondMsg) { globalKbx.kbxIsWorking = 1; $(globalKbx.settings.messageContainer).append(kbxKits.botPreloader()); //scroll to the last message kbxKits.scrollTo(); setTimeout(function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').html(fristMsg); //Second Message with interval $(globalKbx.settings.messageContainer).append(kbxKits.botPreloader()); //scroll to the last message kbxKits.scrollTo(); setTimeout(function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').html(secondMsg); //Enable the editor kbxKits.enableEditor(globalKbx.settings.obj.send_msg); //scroll to the last message kbxKits.scrollTo(); //keeping in history kbxKits.kbxBotHistorySave(); }, globalKbx.settings.preLoadingTime); }, globalKbx.settings.preLoadingTime); }, double_nobg: function (fristMsg, secondMsg) { globalKbx.kbxIsWorking = 1; $(globalKbx.settings.messageContainer).append(kbxKits.botPreloader()); //scroll to the last message kbxKits.scrollTo(); setTimeout(function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').html(fristMsg); //Second Message with interval $(globalKbx.settings.messageContainer).append(kbxKits.botPreloader()); //scroll to the last message kbxKits.scrollTo(); setTimeout(function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').parent().addClass('kbx-bot-msg-flat').html(secondMsg); //scroll to the last message kbxKits.scrollTo(); //Enable the editor kbxKits.enableEditor(globalKbx.settings.obj.send_msg); //scroll to the last message kbxKits.scrollTo(); //keeping in history kbxKits.kbxBotHistorySave(); }, globalKbx.settings.preLoadingTime); }, globalKbx.settings.preLoadingTime); }, shopper: function (shopperMsg) { globalKbx.kbxIsWorking = 1; $(globalKbx.settings.messageContainer).append(kbxKits.shopperMsgDom(shopperMsg)); //scroll to the last message kbxKits.scrollTo(); }, shopper_choice: function (shopperChoice) { globalKbx.kbxIsWorking = 1; $(globalKbx.settings.messageLastChild).fadeOut(globalKbx.settings.preLoadingTime); $(globalKbx.settings.messageContainer).append(kbxKits.shopperMsgDom(shopperChoice)); //scroll to the last message kbxKits.scrollTo(); //keeping in history kbxKits.kbxBotHistorySave(); } }; //Every tiny tools are implemented in kbxKits as object literal. var kbxKits = { ajax: function (data) { return jQuery.post(globalKbx.settings.obj.ajax_url, data); }, dailogAIOAction: function (text) { return jQuery.ajax({ type: "POST", url: "https://api.dialogflow.com/v1/query?v=20170712", contentType: "application/json; charset=utf-8", dataType: "json", headers: { "Authorization": "Bearer " + globalKbx.settings.obj.ai_df_token }, data: JSON.stringify({ query: text, //lang : globalKbx.language, lang: 'en-US', sessionId: 'KbxBot_df_20180801' }) }); }, sugestCat: function () { var data = {'action': 'kbx_bot_category'}; var result = kbxKits.ajax(data); result.done(function (response) { kbxMsg.single_nobg(response); //Updating & keeping steps and wildcard in localstorage globalKbx.articleStep = 'category'; localStorage.setItem("articleStep", globalKbx.articleStep); setTimeout(function () { if (globalKbx.articleStep == 'category') { if (globalKbx.settings.obj.disable_support != 1) { var emailSuggMsg = kbxKits.randomMsg(globalKbx.settings.obj.support_email); var confirmBtn = '' + globalKbx.settings.obj.yes + ' ' + globalKbx.settings.obj.or + ' ' + globalKbx.settings.obj.no + ''; var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.double_nobg(emailSuggMsg, confirmBtn + backStart); }else{ var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.single(backStart); } } //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } }, globalKbx.settings.wildcardsShowTime); }); }, kbxBotHistorySave: function () { var kbxBotHistory = $(globalKbx.settings.messageWrapper).html(); localStorage.setItem("kbxBotHistory", kbxBotHistory); globalKbx.kbxIsWorking = 0; }, suggestEmail: function () { var emailSuggMsg = kbxKits.randomMsg(globalKbx.settings.obj.support_email); var confirmBtn = '' + globalKbx.settings.obj.yes + ' ' + globalKbx.settings.obj.or + ' ' + globalKbx.settings.obj.no + ''; var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.double_nobg(emailSuggMsg, confirmBtn + backStart); } , videohandler: function () { $(globalKbx.settings.messageLastChild + ' .kbx-bot-paragraph').html(function (i, html) { return html.replace(/(?:https:\/\/)?(?:www\.)?(?:youtube\.com|youtu\.be)\/(?:watch\?v=)?(.+)/g, ''); }); }, enableEditor: function (placeHolder) { $("#kbx-bot-editor").attr('disabled', false).focus(); $("#kbx-bot-editor").attr('placeholder', placeHolder); $("#kbx-bot-send-message").attr('disabled', false); }, disableEditor: function (placeHolder) { $("#kbx-bot-editor").attr('placeholder', placeHolder); $("#kbx-bot-editor").attr('disabled', true); $("#kbx-bot-send-message").attr('disabled', true); //Remove extra pre loader. if ($('.kbx-bot-messages-container').find('.kbx-bot-comment-loader').length > 0) { $('.kbx-bot-messages-container').find('.kbx-bot-comment-loader').parent().parent().hide(); } }, scrollTo: function () { $(globalKbx.settings.botContainer).animate({scrollTop: $('.kbx-bot-messages-wrapper').prop("scrollHeight")}, 'slow'); // $(globalKbx.settings.botContainer).animate({ scrollTop: $('#kbx-bot-messages-container').prop("scrollHeight")}, 'slow'); }, botPreloader: function () { var msgContent = '
  • ' + '
    ' + '' + '
    ' + '
    ' + globalKbx.settings.obj.agent + '
    ' + '
    Typing...
  • '; return msgContent; }, shopperMsgDom: function (msg) { if (globalKbx.hasNameCookie) { var shopper = globalKbx.hasNameCookie; } else { var shopper = globalKbx.settings.obj.shopper_demo_name; } var msgContent = '
  • ' + '
    ' + '' + '
    ' + '
    ' + shopper + '
    ' + '
    ' + msg + '
  • '; return msgContent; }, showCart: function () { var data = {'action': 'kbx_bot_show_cart'} this.ajax(data).done(function (response) { //if cart show on message board if ($('#kbx-bot-shortcode-template-container').length == 0) { $('.kbx-bot-messages-wrapper').html(response.html); $('#kbx-bot-cart-numbers').html(response.items); kbxKits.disableEditor('Shopping Cart'); } else { //Cart show on shortcode $('.kbx-bot-cart-shortcode-container').html(response.html); } //Add scroll to the cart shortcode if ($('#kbx-bot-shortcode-template-container').length > 0 && $('.kbx-bot-shortcode-template-02').length == 0) { $('.kbx-bot-cart-body').slimScroll({height: '200px', start: 'bottom'}); } }); }, randomMsg: function (arrMsg) { var index = Math.floor(Math.random() * arrMsg.length); return arrMsg[index]; }, toTitlecase: function (msg) { return msg.replace(/\w\S*/g, function (txt) { return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); }); }, filterStopWords: function (msg) { var spcialStopWords = ",;,/,\\,[,],{,},(,),&,*,.,+ ,?,^,$,=,!,<,>,|,:,-"; var userMsg = ""; //Removing Special Characts from last position. var msgLastChar = msg.slice(-1); if (spcialStopWords.indexOf(msgLastChar) >= 0) { userMsg = msg.slice(0, -1); } else { userMsg = msg; } var stopWords = globalKbx.settings.obj.stop_words + spcialStopWords; var stopWordsArr = stopWords.split(','); var msgArr = userMsg.split(' '); var filtermsgArr = msgArr.filter(function myCallBack(el) { return stopWordsArr.indexOf(el.toLowerCase()) < 0; }); filterMsg = filtermsgArr.join(' '); return filterMsg; }, htmlTagsScape: function (userString) { var tagsToReplace = { '&': '&', '<': '<', '>': '>' }; return userString.replace(/[&<>]/g, function (tag) { return tagsToReplace[tag] || tag; }); }, cardResponse: function (title, subtitle, buttons, text, postback) { var card = '
    ' + title + '
    '; card += '
    ' + subtitle + '
    '; var index = 0; for (index; index < buttons.length; index++) { card += '' + buttons[index].text + ''; } return card; }, quickRepliesResponse: function (title, replies) { var quickRes = '
    ' + title + '
    '; var index = 0; for (index; index < replies.length; index++) { quickRes += ''; } return quickRes; }, imageResponse: function (imageUrl) { if (imageUrl != "") { var ImgRes = ''; return ImgRes; } } } /* * kbxBot Trees are basically product,order and support * Article tree : to show the list of article based on the asking. * support tree : List of support query-answer including text & video and email to admin option. */ var kbxTree = { greeting: function (msg) { if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { //When intialize 1 and don't have cookies then keep the name of shooper in in cookie if (globalKbx.initialize == 1 && !localStorage.getItem('shopper') && globalKbx.wildCard == 0 && globalKbx.ai_step == 0) { var main_text = msg; msg=kbxKits.toTitlecase(msg); var dfReturns=kbxKits.dailogAIOAction(msg); dfReturns.done(function( response ) { if(response.status.code==200){ var intent = response.result.metadata.intentName; if(intent=="get name"){ given_name = response.result.parameters.given_name; last_name = response.result.parameters.last_name; fullname = given_name+' '+last_name; if(fullname.length<2){ fullname = msg } $.cookie("shopper", fullname, { expires : 365 }); localStorage.setItem('shopper',fullname); globalKbx.hasNameCookie=fullname; //Greeting with name and suggesting the wildcard. var NameGreeting=kbxKits.randomMsg(globalKbx.settings.obj.i_am) +" "+globalKbx.settings.obj.agent+"! "+kbxKits.randomMsg(globalKbx.settings.obj.name_greeting)+", "+fullname+"!"; var serviceOffer=kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); //After completing two steps messaging showing wildcards. kbxMsg.double(NameGreeting,serviceOffer); globalKbx.ai_step=1; globalKbx.wildCard=0; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); }else{ /* msg = kbxKits.toTitlecase(msg); $.cookie("shopper", msg, {expires: 365}); localStorage.setItem('shopper', msg); globalKbx.hasNameCookie = msg; // /Greeting with name and suggesting the wildcard. var NameGreeting = kbxKits.randomMsg(globalKbx.settings.obj.i_am) + " " + globalKbx.settings.obj.agent + "! " + kbxKits.randomMsg(globalKbx.settings.obj.name_greeting) + ", " + msg + "!"; var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); //After completing two steps messaging showing wildcards. kbxMsg.double(NameGreeting, serviceOffer); globalKbx.wildCard = 0; globalKbx.ai_step = 1; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); */ $.cookie("shopper", globalKbx.settings.obj.shopper_demo_name, { expires : 365 }); localStorage.setItem('shopper',globalKbx.settings.obj.shopper_demo_name); globalKbx.hasNameCookie=globalKbx.settings.obj.shopper_demo_name; globalKbx.ai_step=1; globalKbx.wildCard=0; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); kbxMsg.single(globalKbx.settings.obj.shopper_call_you+' '+globalKbx.settings.obj.shopper_demo_name); setTimeout(function(){ var serviceOffer=kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.single(serviceOffer); },globalKbx.settings.preLoadingTime) } } }) } //When returning shopper then greeting with name and wildcards. else if (localStorage.getItem('shopper') && globalKbx.wildCard == 0 && globalKbx.ai_step == 0) { //else if (globalKbx.hasNameCookie && globalKbx.wildCard == 0) { //After asking service show the wildcards. var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.single(serviceOffer); globalKbx.ai_step = 1; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } //When user asking needs then DialogFlow will given intent after NLP steps. else if (globalKbx.wildCard == 0 && globalKbx.ai_step == 1) { var dfReturns = kbxKits.dailogAIOAction(msg); dfReturns.done(function (response) { if (response.status.code == 200) { var userIntent = response.result.metadata.intentName; if (userIntent == 'start') { globalKbx.wildCard = 0; var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.double_nobg(serviceOffer, globalKbx.wildcards); } else if (userIntent == 'reset') { var restWarning = globalKbx.settings.obj.reset; var confirmBtn = '' + globalKbx.settings.obj.yes + ' ' + globalKbx.settings.obj.or + ' ' + globalKbx.settings.obj.no + ''; var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.double_nobg(restWarning, confirmBtn + backStart); } else if (userIntent == 'article_search') { var searchQuery = kbxKits.filterStopWords(response.result.resolvedQuery); globalKbx.wildCard = 1; globalKbx.articleStep = 'search' kbxAction.bot(searchQuery); //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } else if (userIntent == 'article_list') { kbxAction.bot(globalKbx.settings.obj.sys_key_catalog.toLowerCase()); }else if(userIntent=='get name'){ given_name = response.result.parameters.given_name; last_name = response.result.parameters.last_name; fullname = given_name+' '+last_name; $.cookie("shopper", fullname, { expires : 365 }); localStorage.setItem('shopper',fullname); globalKbx.hasNameCookie=fullname; //Greeting with name and suggesting the wildcard. var NameGreeting=kbxKits.randomMsg(globalKbx.settings.obj.i_am) +" "+globalKbx.settings.obj.agent+"! "+kbxKits.randomMsg(globalKbx.settings.obj.name_greeting)+", "+fullname+"!"; var serviceOffer=kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); //After completing two steps messaging showing wildcards. kbxMsg.double(NameGreeting,serviceOffer); globalKbx.ai_step=1; globalKbx.wildCard=0; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else if (userIntent == 'email') { //kbxMsg.shopper_choice('Support'); //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_email); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'email'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); } else if (response.result.score != 0) { // checking is reponsing from dialogflow. if (response.result.action == "") { if (response.result.fulfillment.speech != "" && globalKbx.settings.obj.custom_intent_enable == 1) { //DialogFlow all defualt message will be printed. var DFMsg = response.result.fulfillment.speech; kbxMsg.single(DFMsg); } else if (response.result.fulfillment.speech == "" && response.result.fulfillment.hasOwnProperty('messages') && globalKbx.settings.obj.rich_response_enable == 1 && globalKbx.settings.obj.custom_intent_enable == 1) { //DialogFlow all defualt message will be printed. var DFMsg = ""; var messages = response.result.fulfillment.messages; var numMessages = messages.length; var index = 0; for (index; index < numMessages; index++) { var message = messages[index]; switch (message.type) { case 0: // For text response DFMsg += message.speech; break; case 1: // For card part DFMsg += kbxKits.cardResponse(message.title, message.subtitle, message.buttons, message.text, message.postback); break; case 2: // For quick replies DFMsg += kbxKits.quickRepliesResponse(message.title, message.replies); break; case 3: // For image response DFMsg += kbxKits.imageResponse(message.imageUrl); break; case 3: // custom payload break; default: } } kbxMsg.single(DFMsg); } else if (globalKbx.settings.obj.disable_product_search != 1) { //Default is considered as product searching in the system if its not smalltalk && no respone message from DF var searchQuery = kbxKits.filterStopWords(response.result.resolvedQuery); globalKbx.wildCard = 1; globalKbx.articleStep = 'search' kbxAction.bot(searchQuery); //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } else { var dfDefaultMsg = globalKbx.settings.obj.df_defualt_reply; kbxMsg.single(dfDefaultMsg); } } else if (response.result.action != "") { //Working for smalltalk var sTalkAction = response.result.action; var sTalkActionArr = sTalkAction.split('.'); if (sTalkActionArr[0] == 'smalltalk') { var sMgs = response.result.fulfillment.speech; kbxMsg.single(sMgs); } else { var searchQuery = kbxKits.filterStopWords(response.result.resolvedQuery); globalKbx.wildCard = 1; globalKbx.articleStep = 'search' kbxAction.bot(searchQuery); //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } } } else { var searchQuery = kbxKits.filterStopWords(response.result.resolvedQuery); globalKbx.wildCard = 1; globalKbx.articleStep = 'search' kbxAction.bot(searchQuery); //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } } else { //if bad request or limit cross then globalKbx.df_status_lock = 1; var dfDefaultMsg = globalKbx.settings.obj.df_defualt_reply; kbxMsg.double_nobg(dfDefaultMsg, globalKbx.wildcards); } }).fail(function (error) { var dfDefaultMsg = globalKbx.settings.obj.df_defualt_reply; kbxMsg.double_nobg(dfDefaultMsg, globalKbx.wildcards); }); } } else { if (globalKbx.initialize == 1 && !localStorage.getItem('shopper') && globalKbx.wildCard == 0) { msg = kbxKits.toTitlecase(msg); $.cookie("shopper", msg, {expires: 365}); localStorage.setItem('shopper', msg); globalKbx.hasNameCookie = msg; // /Greeting with name and suggesting the wildcard. var NameGreeting = kbxKits.randomMsg(globalKbx.settings.obj.i_am) + " " + globalKbx.settings.obj.agent + "! " + kbxKits.randomMsg(globalKbx.settings.obj.name_greeting) + ", " + msg + "!"; var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); //After completing two steps messaging showing wildcards. kbxMsg.double(NameGreeting, serviceOffer); setTimeout(function () { if (globalKbx.wildcards != "") { kbxMsg.single_nobg(globalKbx.wildcards); } globalKbx.wildCard = 1; globalKbx.articleStep = 'search'; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); //console.log(globalKbx.wildCard, globalKbx.articleStep); }, parseInt(globalKbx.settings.preLoadingTime * 2.5)); } //When returning shopper then greeting with name and wildcards. else if (localStorage.getItem('shopper') && globalKbx.wildCard == 0) { //else if (globalKbx.hasNameCookie && globalKbx.wildCard == 0) { //After asking service show the wildcards. var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.double_nobg(serviceOffer, globalKbx.wildcards); globalKbx.wildCard = 1; globalKbx.articleStep = 'search'; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } } }, article: function (msg) { console.log(msg); if (globalKbx.wildCard == 1 && globalKbx.articleStep == 'search') { var data = {'action': 'kbx_bot_keyword', 'keyword': msg}; //Products by string search ajax handler. kbxKits.ajax(data).done(function (response) { //console.log(response); if (response.articles_num == 0) { //var productFail=kbxKits.randomMsg(globalKbx.settings.obj.product_fail)+" "+msg+"!"; //var productSuggest=kbxKits.randomMsg(globalKbx.settings.obj.product_suggest); var articleFail = kbxKits.randomMsg(globalKbx.settings.obj.articles_fail); var catalogSuggest = kbxKits.randomMsg(globalKbx.settings.obj.catalog_suggest); kbxMsg.double(articleFail, catalogSuggest); //Suggesting category. setTimeout(function () { kbxKits.sugestCat(); }, parseInt(globalKbx.settings.preLoadingTime * 2.1)); } else { var findMore = '' + kbxKits.randomMsg(globalKbx.settings.obj.find_more) + ''; var articleSucces = kbxKits.randomMsg(globalKbx.settings.obj.articles_success)+" "+msg+""; kbxMsg.double_nobg(articleSucces, response.html + findMore); } }); globalKbx.wildCard = 0; } else if (globalKbx.wildCard == 1 && globalKbx.articleStep == 'category') { var msg = msg.split("#"); var categoryTitle = msg[0]; var categoryId = msg[1]; var data = {'action': 'kbx_bot_category_articles', 'category': categoryId}; //Product by category ajax handler. kbxKits.ajax(data).done(function (response) { if (response.product_num == 0) { //Since product does not found then show message and suggesting infinity search var productFail = kbxKits.randomMsg(globalKbx.settings.obj.articles_fail) + " " + categoryTitle + "!"; var searchAgain = kbxKits.randomMsg(globalKbx.settings.obj.articles_infinite); kbxMsg.double(productFail, searchAgain); //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } } else { //Now show chat message to choose the product. var productSuccess = kbxKits.randomMsg(globalKbx.settings.obj.articles_success) + " " + categoryTitle + "!"; var products = response.html; kbxMsg.double_nobg(productSuccess, products); //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } } }); } }, support: function (msg) { if (globalKbx.wildCard == 3 && globalKbx.supportStep == 'welcome') { var welcomeMsg = kbxKits.randomMsg(globalKbx.settings.obj.support_welcome); kbxMsg.single(welcomeMsg); setTimeout(function () { kbxKits.suggestEmail(); }, parseInt(globalKbx.settings.wildcardsShowTime / 2)); } else if (globalKbx.wildCard == 3 && globalKbx.supportStep == 'email') { globalKbx.shopperEmail = msg; var validate = ""; var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i; if (re.test(globalKbx.shopperEmail) != true) { validate = validate + kbxKits.randomMsg(globalKbx.settings.obj.invalid_email); } if (validate == "") { var askingMsg = kbxKits.randomMsg(globalKbx.settings.obj.asking_msg); kbxMsg.single(askingMsg); globalKbx.supportStep = 'message'; //keeping value in localstorage localStorage.setItem("supportStep", globalKbx.supportStep); } else { kbxMsg.single(validate); globalKbx.supportStep = 'email'; //keeping value in localstorage localStorage.setItem("supportStep", globalKbx.supportStep); } } else if (globalKbx.wildCard == 3 && globalKbx.supportStep == 'message') { var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); var data = { 'action': 'kbx_bot_support_email', 'name': globalKbx.hasNameCookie, 'email': globalKbx.shopperEmail, 'message': msg }; kbxKits.ajax(data).done(function (response) { //var json = $.parseJSON(response); var json = response; if (json.status == 'success') { var sucMsg = json.message; kbxMsg.single(sucMsg); //Asking email after showing answer. setTimeout(function () { kbxMsg.single(serviceOffer); //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } }, globalKbx.settings.preLoadingTime); } else { var failMsg = json.message; kbxMsg.single(failMsg); //Asking email after showing answer. setTimeout(function () { kbxMsg.single(serviceOffer); //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } }, globalKbx.settings.preLoadingTime); } }); } else if (globalKbx.wildCard == 3 && globalKbx.supportStep == 'phone') { var data = {'action': 'kbx_bot_support_phone', 'name': globalKbx.hasNameCookie, 'phone': msg}; kbxKits.ajax(data).done(function (response) { //var json = $.parseJSON(response); var json = response; if (json.status == 'success') { var sucMsg = json.message; kbxMsg.single(sucMsg); //Asking email after showing answer. setTimeout(function () { var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.single(serviceOffer); setTimeout(function () { if (globalKbx.wildcards != "") { kbxMsg.single_nobg(globalKbx.wildcards); } //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } }, parseInt(globalKbx.settings.preLoadingTime)); }, globalKbx.settings.preLoadingTime); } else { var failMsg = json.message; kbxMsg.single(failMsg); //Asking email after showing answer. setTimeout(function () { var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.single(serviceOffer); setTimeout(function () { if (globalKbx.wildcards != "") { kbxMsg.single_nobg(globalKbx.wildcards); } //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } }, parseInt(globalKbx.settings.preLoadingTime)); }, globalKbx.settings.preLoadingTime); } }); } } }; /* * kbxBot Actions are divided into two part * shopper will response after initialize message, * then based on shopper activities shopper will act. */ var kbxAction = { bot: function (msg) { //Disable the Editor kbxKits.disableEditor(globalKbx.settings.obj.agent + ' ' + kbxKits.randomMsg(globalKbx.settings.obj.is_typing)); if (globalKbx.wildcardsHelp.indexOf(msg) > -1) { if (msg == globalKbx.settings.obj.sys_key_help.toLowerCase()) { //start globalKbx.wildCard = 1; globalKbx.articleStep = 'search'; //keeping wildcard and steps in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.single(serviceOffer); setTimeout(function () { if (globalKbx.wildcards != "") { kbxMsg.single_nobg(globalKbx.wildcards); } }, parseInt(globalKbx.settings.preLoadingTime)); } if (msg == globalKbx.settings.obj.sys_key_catalog.toLowerCase()) { globalKbx.wildCard = 1; globalKbx.articleStep = 'search'; //keeping wildcard and steps in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); kbxKits.sugestCat(); } if (msg == globalKbx.settings.obj.sys_key_support.toLowerCase()) { //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_email); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'email'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); } if (msg == globalKbx.settings.obj.sys_key_reset.toLowerCase()) { var restWarning = globalKbx.settings.obj.reset; var confirmBtn = '' + globalKbx.settings.obj.yes + ' ' + globalKbx.settings.obj.or + ' ' + globalKbx.settings.obj.no + ''; var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.double_nobg(restWarning, confirmBtn + backStart); //dialogFlow globalKbx.wildCard = 0; globalKbx.ai_step = 1; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } } else { /* * Greeting part * bot action */ if (globalKbx.wildCard == 0) { kbxTree.greeting(msg); } /* * Article Search part * bot action */ if (globalKbx.wildCard == 1) { kbxTree.article(msg); } /* * support part * bot action */ if (globalKbx.wildCard == 3) { kbxTree.support(msg); } } }, shopper: function (msg) { kbxMsg.shopper(msg); if (globalKbx.wildCard == 1 && globalKbx.articleStep == "search") { this.bot(msg); } else if (globalKbx.wildCard == 3) { this.bot(msg); } else if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.wildCard == 0 && globalKbx.ai_step == 1 && globalKbx.df_status_lock == 0) { this.bot(msg); } else { //Filtering the user given messages by stopwords var spcialStopWords = ",;,/,\\,[,],{,},(,),&,*,.,+ ,?,^,$,=,!,<,>,|,:,-"; var userMsg = ""; //Removing Special Characts from last position. var msgLastChar = msg.slice(-1); if (spcialStopWords.indexOf(msgLastChar) >= 0) { userMsg = msg.slice(0, -1); } else { userMsg = msg; } var stopWords = globalKbx.settings.obj.stop_words + spcialStopWords; var stopWordsArr = stopWords.split(','); var msgArr = userMsg.split(' '); var filtermsgArr = msgArr.filter(function myCallBack(el) { return stopWordsArr.indexOf(el.toLowerCase()) < 0; }); filterMsg = filtermsgArr.join(' '); //handle empty filterMsg as repeat the message. if (filterMsg == "") { if (globalKbx.emptymsghandler == 0) { globalKbx.repeatQueryEmpty = kbxKits.randomMsg(globalKbx.settings.obj.empty_filter_msg) + ' "' + $(globalKbx.settings.messageLastBot).text() + '"'; globalKbx.emptymsghandler++; } kbxMsg.single(globalKbx.repeatQueryEmpty); } else { globalKbx.emptymsghandler = 0; this.bot(filterMsg); } } //Keeping the chat history in localStorage setTimeout(function () { var kbxBotHistory = $(globalKbx.settings.messageWrapper).html(); localStorage.setItem("kbxBotHistory", kbxBotHistory); }, 5000); } }; /* * kbxBot Plugin Creation without selector and * kbxBot and shoppers all activities will be handled. */ $.kbxbot = function (options) { //Using plugins defualts values or overwrite by options. var settings = $.extend({}, $.kbxbot.defaults, options); //Updating global settings globalKbx.settings = settings; //updating the helpkeywords globalKbx.wildcardsHelp = [globalKbx.settings.obj.sys_key_help.toLowerCase(), globalKbx.settings.obj.sys_key_catalog.toLowerCase(), globalKbx.settings.obj.sys_key_support.toLowerCase(), globalKbx.settings.obj.sys_key_reset.toLowerCase()] //updating wildcards globalKbx.wildcards = ''; if (globalKbx.settings.obj.disable_article_search != 1) { globalKbx.wildcards = '' + kbxKits.randomMsg(globalKbx.settings.obj.wildcard_artilces) + ''; } if (globalKbx.settings.obj.disable_article_list != 1) { globalKbx.wildcards += '' + kbxKits.randomMsg(globalKbx.settings.obj.wildcard_list) + ''; } if (globalKbx.settings.obj.disable_support != 1) { globalKbx.wildcards += '' + kbxKits.randomMsg(globalKbx.settings.obj.wildcard_support) + ''; } if (globalKbx.settings.obj.disable_call_me != 1) { globalKbx.wildcards += '' + kbxKits.randomMsg(globalKbx.settings.obj.wildcard_phone) + ''; } //Initialize the kbxbot with greeting and if already initialize and given name then return greeting.. if (localStorage.getItem("kbxBotHistory") && globalKbx.initialize == 0) { var kbxBotHistory = localStorage.getItem("kbxBotHistory"); $(globalKbx.settings.messageContainer).html(kbxBotHistory); //Scroll to the last element. kbxKits.scrollTo(); if (localStorage.getItem("wildCard")) { globalKbx.wildCard = localStorage.getItem("wildCard"); } if (localStorage.getItem("articleStep")) { globalKbx.articleStep = localStorage.getItem("articleStep"); } if (localStorage.getItem("supportStep")) { globalKbx.supportStep = localStorage.getItem("supportStep"); } //update the value for initializing. globalKbx.initialize = 1; } else { if (globalKbx.initialize == 0 && globalKbx.wildCard == 0) { kbxWelcome.greeting(); //update the value for initializing. globalKbx.initialize = 1; //keeping the chat history in local storage. setTimeout(function () { var kbxBotHistory = $(globalKbx.settings.messageWrapper).html(); localStorage.setItem("kbxBotHistory", kbxBotHistory); }, 4000); } } //When shopper click on send button $(document).on('click', settings.sendButton, function (e) { var shopperMsg = $(settings.messageEditor).val(); if (shopperMsg != "") { kbxAction.shopper(kbxKits.htmlTagsScape(shopperMsg)); $(settings.messageEditor).val(''); } }); /* * Or when shopper press the ENTER key * Then chatting functionality will be started. */ $(document).on('keypress', settings.messageEditor, function (e) { if (e.which == 13 || e.keyCode == 13) { e.preventDefault(); var shopperMsg = $(settings.messageEditor).val(); if (shopperMsg != "") { kbxAction.shopper(kbxKits.htmlTagsScape(shopperMsg)); $(settings.messageEditor).val(''); } } }); //DialogFlow richresponse click $(document).on('click', '.kbx-bot-card-button', function (e) { var PostBack = $(this).attr('card-target'); kbxAction.bot(PostBack); }); //Articles search result accordion. $(document).on('click', '.kbx-bot-search-article-title', function (event) { event.preventDefault(); if ($(this).parent().parent().hasClass('kbx-article-accordion-close')) { $(this).parent().parent().removeClass('kbx-article-accordion-close'); $(this).parent().parent().addClass('kbx-article-accordion-open'); } else { $(this).parent().parent().addClass('kbx-article-accordion-close'); $(this).parent().parent().removeClass('kbx-article-accordion-open'); } // $('.kbx-bot-articles-area ul li').removeClass('kbx-article-accordion-open').addClass('kbx-article-accordion-close'); // if($(this).parent().parent().hasClass('kbx-article-accordion-close')){ // $(this).parent().parent().toggleClass('kbx-article-accordion-close'); // $(this).parent().parent().toggleClass('kbx-article-accordion-open'); // } }); //Article Load More features for product search or category products $(document).on('click', '.kbx-bot-find-more', function (e) { $('#kbx-bot-loadmore-loader').html('...'); var data = {'action': 'kbx_bot_category'}; var result = kbxKits.ajax(data); result.done(function (response) { kbxMsg.double_nobg(globalKbx.settings.obj.find_more_msg, response); //Updating & keeping steps and wildcard in localstorage globalKbx.articleStep = 'category'; localStorage.setItem("articleStep", globalKbx.articleStep); setTimeout(function () { if (globalKbx.articleStep == 'category') { if (globalKbx.settings.obj.disable_support != 1) { var emailSuggMsg = kbxKits.randomMsg(globalKbx.settings.obj.support_email); var confirmBtn = '' + globalKbx.settings.obj.yes + ' ' + globalKbx.settings.obj.or + ' ' + globalKbx.settings.obj.no + ''; var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.double_nobg(emailSuggMsg, confirmBtn + backStart); }else{ var backStart = '' + kbxKits.randomMsg(globalKbx.settings.obj.back_start) + ''; kbxMsg.single(backStart); } //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } } }, globalKbx.settings.wildcardsShowTime); }); }); //Find more thens show category list. $(document).on('click', '#kbx-bot-loadmore', function (e) { $('#kbx-bot-loadmore-loader').html('...'); var loadMoreDom = $(this); var artilesOffest = loadMoreDom.attr('data-offset'); var searchType = loadMoreDom.attr('data-search-type'); var searchTerm = loadMoreDom.attr('data-search-term'); var data = { 'action': 'kbx_bot_load_more', 'offset': artilesOffest, 'search_type': searchType, 'search_term': searchTerm }; //Load more ajax handler. kbxKits.ajax(data).done(function (response) { //Change button text $('#kbx-bot-loadmore-loader').html(''); $('.articleList').append(response.html); loadMoreDom.attr('data-offset', response.offset); if (response.articles_num < response.per_page) { loadMoreDom.hide(); } //scroll to the last message kbxKits.scrollTo(); }); }); //Articles will be shown for corresponding category. $(document).on('click', '.kbx-bot-article-category', function () { var shopperChoiceCatId = $(this).text() + '#' + $(this).attr('data-category-id'); var shopperChoiceCategory = $(this).text(); //keeping value in localstorage globalKbx.wildCard = 1; localStorage.setItem("wildCard", globalKbx.wildCard); globalKbx.articleStep = 'category'; localStorage.setItem("articleStep", globalKbx.articleStep); //Now hide all categories but shopper choice. kbxMsg.shopper_choice(shopperChoiceCategory); kbxAction.bot(shopperChoiceCatId); }); /*Support Email **/ $(document).on('click', '.kbx-bot-suggest-email', function (e) { var shopperChoice = $(this).text(); kbxMsg.shopper_choice(shopperChoice); //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_email); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'email'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); }); //Show ,cart and recently view products by click event. $(document).on('click', '.kbx-bot-operation-option', function (e) { e.preventDefault(); var oppt = $(this).attr('data-option'); if (oppt == 'chat' && globalKbx.kbxIsWorking == 0) { $('.kbx-bot-messages-wrapper').html(localStorage.getItem("kbxBotHistory")); kbxKits.enableEditor('Send Message'); //First remove kbx-bot-operation-active class from all selector $('.kbx-bot-operation-option').parent().removeClass('kbx-bot-operation-active'); //then add the active class to current element. $(this).parent().addClass('kbx-bot-operation-active'); } else if (oppt == 'help' && globalKbx.kbxIsWorking == 0) { if ($('.kbx-bot-messages-container').length == 0) { //if from other nob then goo to the chat window $('.kbx-bot-messages-wrapper').html(localStorage.getItem("kbxBotHistory")); //Showing help message setTimeout(function () { kbxKits.scrollTo(); var helpWelcome = kbxKits.randomMsg(globalKbx.settings.obj.help_welcome); var helpMsg = kbxKits.randomMsg(globalKbx.settings.obj.help_msg); kbxMsg.double(helpWelcome, helpMsg); }, globalKbx.settings.preLoadingTime); } else { //Showing help message on chat self window. var helpWelcome = kbxKits.randomMsg(globalKbx.settings.obj.help_welcome); var helpMsg = kbxKits.randomMsg(globalKbx.settings.obj.help_msg); kbxMsg.double(helpWelcome, helpMsg); } //First remove kbx-bot-operation-active class from all selector $('.kbx-bot-operation-option').parent().removeClass('kbx-bot-operation-active'); //then add the active class to current element. $(this).parent().addClass('kbx-bot-operation-active'); } else if (oppt == 'support' && globalKbx.kbxIsWorking == 0) { if ($('.kbx-bot-messages-container').length == 0) { //if from other nob then goo to the chat window $('.kbx-bot-messages-wrapper').html(localStorage.getItem("kbxBotHistory")); //Showing help message setTimeout(function () { kbxKits.scrollTo(); //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_email); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'email'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); }, globalKbx.settings.preLoadingTime); } else { //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_email); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'email'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); } //First remove kbx-bot-operation-active class from all selector $('.kbx-bot-operation-option').parent().removeClass('kbx-bot-operation-active'); //then add the active class to current element. $(this).parent().addClass('kbx-bot-operation-active'); } }); //reset conversation history. $(document).on('click', '.kbx-bot-reset-btn', function (e) { e.preventDefault(); var actionType = $(this).attr('reset-data'); if (actionType == 'yes') { $('#kbx-bot-messages-container').html(''); $.removeCookie('shopper'); globalKbx.wildCard = 0; globalKbx.ai_step = 0; globalKbx.initialize = 1; //keeping wildcard and steps in localstorage localStorage.removeItem("shopper"); localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); kbxWelcome.greeting(); } else if (actionType == 'no') { kbxAction.bot(globalKbx.settings.obj.sys_key_help.toLowerCase()); } }); //Click on the wildcards //Click on the wildcards to select a service $(document).on('click', '.kbx-bot-wildcard', function () { var wildcardData = $(this).attr('data-wildcart'); var shooperChoice = $(this).text(); kbxMsg.shopper_choice(shooperChoice); //Wild cards handling for bot. if (wildcardData == 'artilces') { globalKbx.wildCard = 1; globalKbx.articleStep = 'search'; //keeping wildcard and steps in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.articles_search_msg); kbxMsg.single(serviceOffer); } if (wildcardData == 'list') { globalKbx.wildCard = 1; globalKbx.articleStep = 'search'; //keeping wildcard and steps in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); kbxKits.sugestCat(); } if (wildcardData == 'support') { kbxMsg.shopper_choice(shooperChoice); //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_email); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'email'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); } if (wildcardData == 'phone') { //Then ask email address if (typeof(globalKbx.hasNameCookie) == 'undefined' || globalKbx.hasNameCookie == '') { var shopperName = globalKbx.settings.obj.shopper_demo_name; } else { var shopperName = globalKbx.hasNameCookie; } var askEmail = globalKbx.settings.obj.hello + ' ' + shopperName + '! ' + kbxKits.randomMsg(globalKbx.settings.obj.asking_phone); kbxMsg.single(askEmail); //Now updating the support part and keeping value in localstorage globalKbx.supportStep = 'phone'; globalKbx.wildCard = 3; localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("supportStep", globalKbx.supportStep); } if (wildcardData == 'back') { var serviceOffer = kbxKits.randomMsg(globalKbx.settings.obj.wildcard_msg); kbxMsg.single(serviceOffer); setTimeout(function () { if (globalKbx.wildcards != "") { kbxMsg.single_nobg(globalKbx.wildcards); } //For handle the ai and alone if (globalKbx.settings.obj.ai_df_enable == 1 && globalKbx.df_status_lock == 0) { globalKbx.wildCard = 0; globalKbx.ai_step = 1; //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("aiStep", globalKbx.ai_step); } else { globalKbx.wildCard = 1; globalKbx.articleStep = 'search' //keeping value in localstorage localStorage.setItem("wildCard", globalKbx.wildCard); localStorage.setItem("articleStep", globalKbx.articleStep); } }, parseInt(globalKbx.settings.preLoadingTime)); } }); return this; }; //Deafault value for kbxbot.If nothing passes from the work station //Then defaults value will be used. $.kbxbot.defaults = { obj: {}, sendButton: '#kbx-bot-send-message', messageEditor: '#kbx-bot-editor', messageContainer: '#kbx-bot-messages-container', messageWrapper: '.kbx-bot-messages-wrapper', botContainer: '.kbx-bot-ball-inner', messageLastChild: '#kbx-bot-messages-container li:last', messageLastBot: '#kbx-bot-messages-container .kbx-bot-msg:last .kbx-bot-paragraph', preLoadingTime: 1500, wildcardsShowTime: 5000, } })(jQuery);